/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package logica;

import java.io.File;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 *
 * @author raul navarro
 */
public class ConexionBD {

private Connection conexion;
protected final Log logger = LogFactory.getLog(getClass());

public Connection conectarBD(){
        try {
            Class.forName("org.sqlite.JDBC"); //driver a utilizar
            String ruta = "bdEscritorio.sqlite3"; //ruta de la base
            File base = new File(ruta); //se declara como un archivo
            if (base.exists()) {
                //evalua si el archivo existe
                setConexion(DriverManager.getConnection("jdbc:sqlite:" + ruta)); //conexion con la base
                logger.info("la base de datos existe y se conecto exitosamente");
            }else{
                
                logger.info("la base de datos no existe y no se conecto exitosamente");

            }
        } catch (SQLException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(ConexionBD.class.getName()).log(Level.SEVERE, null, ex);
        }
        return getConexion();
}
protected void finalize() throws Throwable
    {
        try{
            if(getConexion()!=null)
                getConexion().close();
        }catch(SQLException e){
            logger.info("ERROR, No se pudo cerrar la conexion " + e.toString());
        }
    }

    /**
     * @return the conexion
     */
    public Connection getConexion() {
        return conexion;
    }

    /**
     * @param conexion the conexion to set
     */
    public void setConexion(Connection conexion) {
        this.conexion = conexion;
    }



}
